package com.dkd.manage.mapper;

import com.dkd.manage.annotation.AutoFill;
import com.dkd.manage.constant.OperationType;
import com.dkd.manage.pojo.dto.RegionQueryListDto;
import com.dkd.manage.pojo.entity.Region;
import com.dkd.manage.pojo.vo.RegionVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface RegionMapper {


    /**
     * 分页查询区域列表
     * @param regionQueryListDto
     * @return
     */
    List<RegionVo> list(RegionQueryListDto regionQueryListDto);


    /**
     * 新增区域
     * @param region
     * @return
     */
    @AutoFill(OperationType.INSERT)
    Integer add(Region region);

    /**
     * 修改区域
     * @param region
     * @return
     */
    @AutoFill(OperationType.UPDATE)
    Integer edit(Region region);

    /**
     * 根据id查询区域
     * @param id
     * @return
     */
    @Select("select id, region_name, create_time, update_time, create_by, update_by, remark from tb_region " +
            "where id = #{id}")
    Region getRegionById(Long id);

    /**
     * 根据id删除区域
     * @param ids
     * @return
     */
    Integer deleteRegionById(@Param("ids") Long[] ids);
}
